# Copyright (C) 2012-2015 Free Software Foundation, Inc.

# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
# 
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
# 
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.  

#
# ia64 tests
#
if [istarget "ia64-*"] then {

    run_dump_test "regs"
    run_dump_test "opc-a"
    run_list_test "opc-a-err" ""
    run_dump_test "opc-b"
    run_dump_test "opc-f"
    run_dump_test "opc-i"
    run_dump_test "opc-m"
    run_dump_test "opc-x"
    run_dump_test "psn"
    run_dump_test "pseudo"
    run_dump_test "nop_x"
    run_dump_test "mov-ar"
    run_list_test "operands" ""
    run_list_test "reg-err" ""

    run_list_test "dv-raw-err" ""
    run_list_test "dv-waw-err" ""
    run_list_test "dv-war-err" ""
    run_list_test "dv-entry-err" ""
    run_list_test "dv-mutex-err" ""
    run_dump_test "dv-branch"
    run_dump_test "dv-imply"
    run_dump_test "dv-mutex"
    gas_test "pred-rel.s" "" "" ".pred.rel alternative forms"
    run_dump_test "dv-safe"
    run_dump_test "dv-srlz"
    run_list_test "regval" ""
    run_dump_test "tls"
    run_dump_test "ldxmov-1"
    run_list_test "ldxmov-2" ""
    run_dump_test "ltoff22x-1"
    run_dump_test "ltoff22x-2"
    run_dump_test "ltoff22x-3"
    run_dump_test "ltoff22x-4"
    run_dump_test "ltoff22x-5"

    run_dump_test "nostkreg"
    run_list_test "invalid-ar" ""

    run_dump_test "nostkreg"
    run_list_test "invalid-ar" ""

    run_dump_test "dependency-1"

    run_dump_test "reloc"
    run_dump_test "reloc-mlx"
    run_list_test "reloc-bad" ""
    run_dump_test "pcrel"

    run_dump_test "real"
    run_dump_test "align"
    run_dump_test "order"
    run_dump_test "global"
    if [istarget "ia64-*-hpux*"] then {
	run_dump_test "secname-ilp32"
	run_dump_test "unwind-ilp32"
	run_dump_test "alias-ilp32"
	run_dump_test "xdata-ilp32"
	run_dump_test "reloc-uw-ilp32"
    } else {
	run_dump_test "secname"
	run_dump_test "unwind"
	run_dump_test "alias"
	run_dump_test "xdata"
	run_dump_test "reloc-uw"
	run_dump_test "group-1"
	run_dump_test "group-2"
    }

    run_list_test "alloc" ""
    run_dump_test "bundling"
    run_dump_test "forward"
    run_list_test "index" ""
    run_list_test "label" ""
    run_list_test "last" ""
    run_list_test "no-fit" ""
    run_list_test "pound" "-al"
    run_list_test "proc" "-munwind-check=error"
    run_list_test "radix" ""
    run_list_test "rotX" ""
    run_list_test "slot2" ""
    run_dump_test "strange"
    run_list_test "unwind-bad" ""
    run_list_test "unwind-err" "-munwind-check=error"
    run_dump_test "unwind-ok"
    run_dump_test "operand-or"
    run_list_test "hint.b-err" ""
    run_list_test "hint.b-warn" "-mhint.b=warning"

    if [istarget "ia64-*-*vms*"] then {
	run_dump_test "slotcount"
    }

    if { [istarget "ia64-*-elf*"] || [istarget "ia64-*-linux*"] } {
	run_dump_test "pr13167"
    }
}
